#pragma once
#include "Mode.h"
#include "Struct.h"
#include "std/string"
class CActorPickInfo;
class CGameActor;
class CMousePointer;
class CView;
class CWorld;
class UINameBalloonText;
class UITransBalloonText;


class CGameMode : public CMode
{
	public: CGameMode::CGameMode();
	public: virtual CGameMode::~CGameMode();
	public: virtual int CGameMode::OnRun();
	public: virtual void CGameMode::OnInit(const char* modeName);
	public: virtual void CGameMode::OnExit();
	public: virtual void CGameMode::OnUpdate();
	public: virtual void CGameMode::vfn5(int a1);
	public: virtual int CGameMode::SendMsg(int messageId, int val1, int val2, int val3);
	public: virtual void CGameMode::OnChangeState(int state); // private

	private: void CGameMode::PollNetworkStatus(void);
	public: CWorld* CGameMode::GetWorld(void);
	public: CView* CGameMode::GetView(void);
//	public: void CGameMode::ChatDori(void);
	public: void CGameMode::Initialize(void);
//	public: void CGameMode::MakeFog(int fogOn);
//	public: void CGameMode::PlayBGM(void);
	public: void CGameMode::SetCamera(void);
//	public: void CGameMode::SaveCamera(void);
//	public: void CGameMode::PushGameObject(CGameObject* gameObject);
	public: void CGameMode::RemoveGameActorAllAndMake(void);
	public: void CGameMode::MakeMousePointer(vector2d& pos);
	public: void CGameMode::MakeMenu(CActorPickInfo* actorInfo, int processType);
	public: void CGameMode::ProcessMouseSnap(CActorPickInfo* actorInfo, int processType);
	public: void CGameMode::ProcessWheel(int processType);
	public: void CGameMode::ProcessRBtn(void);
	public: int CGameMode::ProcessGroundPick(int processType);
//	public: void CGameMode::ProceedAttack(unsigned long actorGid, int attackOnce);
//	public: bool CGameMode::AttackSkillOverWeightMessage(void);
	public: void CGameMode::UnloadRarelyUsedCaches(void);
	public: void CGameMode::ProcessReqEmblem(void);
	public: void CGameMode::ProcessNameWaitingTimer(void);
	public: void CGameMode::ProcessPeriodicalJobs(void);
	public: void CGameMode::GetServerCoor(float cx, float cz, int& sx, int& sy, int& cellX, int& cellY);
	public: void CGameMode::GetServerCoor(float cx, float cz, int& sx, int& sy);
	public: void CGameMode::GetClientCoor(int sx, int sy, int subX, int subY, float& cx, float& cz);
	public: void CGameMode::GetClientCoor(int sx, int sy, float& cx, float& cz);
//	public: void CGameMode::ConvertToNumCellClose(int &, int &, int &, int &, int);
//	public: void CGameMode::ConvertToNoRedCell(int &, int &, int &, int &);
//	public: void CGameMode::ConvertToNumCellCloseAndFindNoRedCell(float, float, float, float, int &, int &, int);
//	public: bool CGameMode::IsInsideCell(int &, int &, int &, int &, int);
	public: bool CGameMode::IsRedCell(int x, int y);
//	public: int CGameMode::GetCellFlag(int, int);
//	public: bool CGameMode::IsValidCell(int x, int y);
	public: bool CGameMode::CanFindPath(int sx, int sy, int cellX, int cellY, int dx, int dy);
	public: bool CGameMode::GetClosestValidCell(int& dx, int& dy);
	public: bool CGameMode::IsRegisterCell(int x, int y);
//	public: void CGameMode::MakeGroundMousePointer(void);
	public: void CGameMode::HideMousePointer(int time);
	public: void CGameMode::ProcessInput(void);
	public: bool CGameMode::GetGroundAttrPos(int& dx, int& dy);
//	public: void CGameMode::CheckGuildMemberStatusCache(unsigned long gid, NamePair* actorName);
	public: void CGameMode::MakeNameBalloon(unsigned long aid);
	public: void CGameMode::MakeActorNameBalloon(CGameActor* theActor);
	public: void CGameMode::ProcessNameBalloon(void);
	public: void CGameMode::InvalidatePlayerGage(void);
	public: void CGameMode::HideCheck(void);
//	public: void CGameMode::DrawMiniMap(void);
//	private: void CGameMode::DrawMinimapTriangle(float fX, float fY, float trisize, unsigned long argb);
//	public: void CGameMode::DrawPKRanking(void);
//	public: void CGameMode::DrawTime(unsigned long timeTick, int showType);
//	public: void CGameMode::DrawDragImage(void);
//	public: void CGameMode::DrawIllustImage(void);
//	public: void CGameMode::DrawUseSkillLevelNumber(void);
//	public: void CGameMode::RotatePoint(float, float, float &, float &, int);
	public: void CGameMode::ProcessTalkType(int val1, int val2);
	public: void CGameMode::ProcessLockOnMouse(void);
//	public: void CGameMode::ProcessAssignAID(void);
	public: int CGameMode::ProcessActorPick(int processType, CActorPickInfo* actorInfo);
//	public: void CGameMode::ProcessPcPick(int& processType, CActorPickInfo* actorInfo, CGameActor* pc);
//	public: void CGameMode::ProcessMonsterPick(int& processType, CActorPickInfo* actorInfo, CGameActor* monster);

	public: CGameActor* CGameMode::NewNpc(int job);
	public: void CGameMode::GameModeShowEFST(int GID, int effectState, int clevel, int showEFST);
	public: void CGameMode::MakeEmblemWnd(CGameActor* theActor, int gdid, int emblemVer);
	public: void CGameMode::ProcessStateInfoBalloon(int xPos, int yPos);
	public: mystd::string CGameMode::GetStateRemainingTimeStr(int in_EFST, int* out_EFST);
	mystd::string GetActorName2010(int aid); //TODO

public:
	void Zc_Accept_Enter(const char* buf);
	void Zc_Notify_Standentry(const char* buf);
	void Zc_Notify_Newentry(const char* buf);
	void Zc_Notify_Actentry(const char* buf);
	void Zc_Notify_Moveentry(const char* buf);
	void Zc_Notify_Standentry_Npc(const char* buf);
	void Zc_Notify_Time(const char* buf);
	void Zc_Notify_Vanish(const char* buf);
	void Sc_Notify_Ban(const char* buf);
	void Zc_Accept_Quit(const char* buf);
	void Zc_Refuse_Quit(const char* buf);
	void Zc_Notify_Move(const char* buf);
	void Zc_Notify_Playermove(const char* buf);
	void Zc_Stopmove(const char* buf);
	void Zc_Notify_Act(unsigned long GID, unsigned long targetGID, unsigned long startTime, int attackMT, int attackedMT, int damage, short count, unsigned char action, int leftDamage);
	void Zc_Notify_Act_Position(const char* buf);
	void Zc_Notify_Chat(const char* buf);
	void Zc_Notify_Playerchat(const char* buf);
	void Zc_Npcack_Mapmove(const char* buf);
	void Zc_Npcack_Servermove(const char* buf);
	void Zc_Npcack_Enable(const char* buf);
	void Zc_Ack_Reqname(const char* buf);
	void Zc_Whisper(const char* buf);
	void Zc_Ack_Whisper(const char* buf);
	void Zc_Broadcast(const char* buf);
	void Zc_Change_Direction(const char* buf);
	void Zc_Item_Entry(const char* buf);
	void Zc_Item_Fall_Entry(const char* buf);
	void Zc_Item_Pickup_Ack(const char* buf);
	void Zc_Item_Disappear(const char* buf);
	void Zc_Normal_Itemlist(const char* buf);
	void Zc_Equipment_Itemlist(const char* buf);
	void Zc_Store_Normal_Itemlist(const char* buf);
	void Zc_Store_Equipment_Itemlist(const char* buf);
	void Zc_Use_Item_Ack(const char* buf);
	void Zc_Req_Wear_Equip_Ack(const char* buf);
	void Zc_Req_Takeoff_Equip_Ack(const char* buf);
	void Zc_Item_Throw_Ack(const char* buf);
	void Zc_Par_Change(const char* buf);
	void Zc_Longpar_Change(const char* buf);
	void Zc_Restart_Ack(const char* buf);
	void Zc_Say_Dialog(const char* buf);
	void Zc_Wait_Dialog(const char* buf);
	void Zc_Close_Dialog(const char* buf);
	void Zc_Menu_List(const char* buf);
	void Zc_Status_Change_Ack(const char* buf);
	void Zc_Status(const char* buf);
	void Zc_Status_Change(const char* buf);
	void Zc_Emotion(const char* buf);
	void Zc_User_Count(const char* buf);
	void Zc_Sprite_Change(const char* buf);
	void Zc_Select_Dealtype(const char* buf);
	void Zc_Pc_Purchase_Itemlist(const char* buf);
	void Zc_Pc_Sell_Itemlist(const char* buf);
	void Zc_Pc_Purchase_Result(const char* buf);
	void Zc_Pc_Sell_Result(const char* buf);
	void Zc_Ack_Disconnect_Character(const char* buf);
	void Zc_Setting_Whisper_Pc(const char* buf);
	void Zc_Setting_Whisper_State(const char* buf);
	void Zc_Whisper_List(const char* buf);
	void Zc_Ack_Create_Chatroom(const char* buf);
	void Zc_Room_Newentry(const char* buf);
	void Zc_Destroy_Room(const char* buf);
	void Zc_Refuse_Enter_Room(const char* buf);
	void Zc_Enter_Room(const char* buf);
	void Zc_Member_Newentry(const char* buf);
	void Zc_Member_Exit(const char* buf);
	void Zc_Change_Chatroom(const char* buf);
	void Zc_Role_Change(const char* buf);
	void Zc_Req_Exchange_Item(const char* buf);
	void Zc_Ack_Exchange_Item(const char* buf);
	void Zc_Ack_Add_Exchange_Item(const char* buf);
	void Zc_Conclude_Exchange_Item(const char* buf);
	void Zc_Cancel_Exchange_Item(const char* buf);
	void Zc_Exec_Exchange_Item(const char* buf);
	void Zc_Exchangeitem_Undo(const char* buf);
	void Zc_Notify_Storeitem_Countinfo(const char* buf);
	void Zc_Add_Item_To_Store(const char* buf);
	void Zc_Delete_Item_From_Store(const char* buf);
	void Zc_Close_Store(const char* buf);
	void Zc_Ack_Make_Group(const char* buf);
	void Zc_Group_List(const char* buf);
	void Zc_Ack_Req_Join_Group(const char* buf);
	void Zc_Req_Join_Group(const char* buf);
	void Zc_groupinfo_change(const char* buf);
	void Zc_Add_Member_To_Group(const char* buf);
	void Zc_Delete_Member_From_Group(const char* buf);
	void Zc_Notify_Hp_To_Groupm(const char* buf);
	void Zc_Notify_Position_To_Groupm(const char* buf);
	void Zc_Notify_Chat_Party(const char* buf);
	void Zc_Mvp_Getting_Item(const char* buf);
	void Zc_Mvp_Getting_Special_Exp(const char* buf);
	void Zc_Mvp(const char* buf);
	void Zc_Throw_Mvpitem(const char* buf);
	void Zc_Skillinfo_Update(const char* buf);
	void Zc_Skillinfo_List(const char* buf);
	void Zc_Ack_Touseskill(const char* buf);
	void Zc_Add_Skill(const char* buf);
	void Zc_Notify_Skill(const char* buf);
	void Zc_Notify_Skill_Position(const char* buf);
	void Zc_Notify_Groundskill(const char* buf);
	void Zc_State_Change(const char* buf);
	void Zc_Use_Skill(const char* buf);
	void Zc_Warplist(const char* buf);
	void Zc_Ack_Remember_Warppoint(const char* buf);
	void Zc_Skill_Entry(const char* buf);
	void Zc_Skill_Disappear(const char* buf);
	void Zc_Notify_Cartitem_Countinfo(const char* buf);
	void Zc_Cart_Equipment_Itemlist(const char* buf);
	void Zc_Cart_Normal_Itemlist(const char* buf);
	void Zc_Add_Item_To_Cart(const char* buf);
	void Zc_Delete_Item_From_Cart(const char* buf);
	void Zc_Cartoff(const char* buf);
	void Zc_Ack_Additem_To_Cart(const char* buf);
	void Zc_openstore(const char* buf);
	void Zc_store_entry(const char* buf);
	void Zc_disappear_entry(const char* buf);
	void Zc_pc_purchase_itemlist_frommc(const char* buf);
	void Zc_pc_purchase_result_frommc(const char* buf);
	void Zc_pc_purchase_myitemlist(const char* buf);
	void Zc_deleteitem_from_mcstore(const char* buf);
	void Zc_attack_failure_for_distance(const char* buf);
	void Zc_attack_range(const char* buf);
	void Zc_action_failure(const char* buf);
	void Zc_equip_arrow(const char* buf);
	void Zc_recovery(const char* buf);
	void Zc_useskill_ack(const char* buf, BOOL isV2);
	void Zc_couplestatus(const char* buf);
	void Zc_open_editdlg(const char* buf);
	void Zc_compass(const char* buf);
	void Zc_show_image(const char* buf);
	void Zc_autorun_skill(const char* buf);
	void Zc_resurrection(const char* buf);
	void Zc_ack_give_manner_point(const char* buf);
	void Zc_notify_manner_point_given(const char* buf);
	void Zc_myguild_basic_info(const char* buf);
	void Zc_ack_guild_menuinterface(const char* buf);
	void Zc_guild_info(const char* buf);
	void Zc_guild_emblem_img(const char* buf);
	void Zc_membermgr_info(const char* buf);
	void Zc_ack_req_change_members(const char* buf);
	void Zc_ack_open_member_info(const char* buf);
	void Zc_ack_leave_guild(const char* buf);
	void Zc_ack_ban_guild(const char* buf);
	void Zc_ack_disorganize_guild_result(const char* buf);
	void Zc_ack_disorganize_guild(const char* buf);
	void Zc_position_info(const char* buf);
	void Zc_GuildSkillInfo(const char* buf);
	void Zc_ban_list(const char* buf);
	void Zc_other_guild_list(const char* buf);
	void Zc_position_id_name_info(const char* buf);
	void Zc_result_make_guild(const char* buf);
	void Zc_ack_req_join_guild(const char* buf);
	void Zc_req_join_guild(const char* buf);
	void Zc_update_gdid(const char* buf);
	void Zc_update_charstat(const char* buf);
	void Zc_guild_notice(const char* buf);
	void Zc_req_ally_guild(const char* buf);
	void Zc_ack_req_ally_guild(const char* buf);
	void Zc_ack_change_guild_positioninfo(const char* buf);
	void Zc_itemidentify_list(const char* buf);
	void Zc_ack_itemidentify(const char* buf);
	void Zc_itemcomposition_list(const char* buf);
	void Zc_ack_itemcomposition(const char* buf);
	void Zc_guild_chat(const char* buf);
	void Zc_ack_req_hostile_guild(const char* buf);
	void Zc_member_add(const char* buf);
	void Zc_delete_related_guild(const char* buf);
	void Zc_add_related_guild(const char* buf);
	void Zc_ack_itemrefining(const char* buf);
	void Zc_notify_mapinfo(const char* buf);
	void Zc_ack_req_disconnect(const char* buf);
	void Zc_monster_info(const char* buf);
	void Zc_makable_item_list(const char* buf);
	void Zc_ack_req_itemmaking(const char* buf);
	void Zc_talkbox_chat_contents(const char* buf);
	void Zc_update_mapinfo(const char* buf);
	void Zc_Ack_Reqname_bygid(const char* buf);
	void Zc_Ack_Reqnameall(const char* buf);
	void Zc_Msg_State_Change(const char* buf);
	void Zc_Notify_Mapproperty(const char* buf);
	void Zc_Notify_Ranking(const char* buf);
	void Zc_Notify_Effect(const char* buf);
	void Zc_Start_Capture(const char* buf);
	void Zc_TryCapture_Monster(const char* buf);
	void Zc_Property_Pet(const char* buf);
	void Zc_Feed_Pet(const char* buf);
	void Zc_Change_Pet_Status(const char* buf);
	void Zc_PetEgg_List(const char* buf);
	void Zc_Pet_Act(const char* buf);
	void Zc_Par_Change_User(const char* buf);
	void Zc_Skill_Update(const char* buf);
	void Zc_MakingArrowList(const char* buf);
	void Zc_NpcSpriteChange(const char* buf);
	void Zc_ShowDigit(const char* buf);
	void Zc_show_image2(const char* buf);
	void Zc_ChangeGuild(const char* buf);
	void Zc_GuildInfo2(const char* buf);
	void Zc_GuildZenyAck(const char* buf);
	void Zc_Dispel(const char* buf);
	void Zc_Reply_RemainTime(const char* buf);
	void Zc_Info_RemainTime(const char* buf);
	void Zc_Broadcast2(const char* buf);
	void Zc_AddItemToStore2(const char* buf);
	void Zc_Add_Item_To_Cart2(const char* buf);
	void Sc_Ack_Encryption(const char* buf);
	void Zc_Use_Item_Ack2(const char* buf);
	void Zc_Skill_Entry2(const char* buf);
	void Zc_Monster_Talk(const char* buf);
	void Zc_AutoSpellList(const char* buf);
	void Zc_DevotionList(const char* buf);
	void Zc_Spirits(const char* buf);
	void Zc_BladeStop(const char* buf);
	void Zc_ComboDelay(const char* buf);
	void Zc_Sound(const char* buf);
	void Zc_Open_EditDlgStr(const char* buf);
	void Zc_Notify_Mapproperty2(const char* buf);
	void Zc_Sprite_Change2(const char* buf);
	void Zc_Notify_Standentry2(const char* buf);
	void Zc_Notify_Newentry2(const char* buf);
	void Zc_Notify_Moveentry2(const char* buf);
	void Zc_Notify_Skill2(const char* buf);
	void Zc_Ack_AccountName(const char* buf);
	void Zc_Spirits2(const char* buf);
	void Zc_Req_Couple(const char* buf);
	void Zc_Start_Couple(const char* buf);
	void Zc_CoupleName(const char* buf);
	void Zc_Add_Member_To_Group2(const char* buf);
	void Zc_Congratulation(const char* buf);
	void Zc_Notify_Position_To_Guildm(const char* buf);
	void Zc_Guild_Member_Map_Change(const char* buf);
	void Zc_Normal_Itemlist2(const char* buf);
	void Zc_Cart_Normal_Itemlist2(const char* buf);
	void Zc_Store_Normal_Itemlist2(const char* buf);
	void Zc_update_charstat2(const char* buf);
	void Zc_Notify_Effect2(const char* buf);
	void Zc_Req_Exchange_Item2(const char* buf);
	void Zc_Ack_Exchange_Item2(const char* buf);
	void Zc_Req_Baby(const char* buf);
	void Zc_Start_Baby(const char* buf);
	void Zc_repair_item_list(const char* buf);
	void Zc_ack_itemrepair(const char* buf);
	void Zc_HighJump(const char* buf);
	void Zc_Friends_List(const char* buf);
	void Zc_Divorce(const char* buf);
	void Zc_Friends_State(const char* buf);
	void Zc_Req_Join_Friend(const char* buf);
	void Zc_Add_Friends_List(const char* buf);
	void Zc_Req_Delete_Friend(const char* buf);
	void Zc_StarSkill(const char* buf);
	void Zc_Ack_PvpPoint(const char* buf);
	void Zc_Ack_Status_GM(const char* buf);
	void Zc_SKILLMSG(const char* buf);
	void Zc_BABYMSG(const char* buf);
	void ZC_BLACKSMITH_RANK(const char* buf);
	void ZC_ALCHEMIST_RANK(const char* buf);
	void ZC_BLACKSMITH_POINT(const char* buf);
	void ZC_ALCHEMIST_POINT(const char* buf);
	void Zc_Notify_PKinfo(const char* buf);
	void Zc_Notify_CrazyKiller(const char* buf);
	void Zc_notify_weapon_item_list(const char* buf);
	void Zc_ack_weaponrefine(const char* buf);
	void ZC_TAEKWON_POINT(const char* buf);
	void ZC_TAEKWON_RANK(const char* buf);
	void Zc_Game_Guard(const char* buf);
	void Zc_State_Change3(const char* buf);
	void Zc_Notify_Standentry3(const char* buf);
	void Zc_Notify_Newentry3(const char* buf);
	void Zc_Notify_Moveentry3(const char* buf);
	void Zc_Property_Homun(const char* buf);
	void Zc_Change_Mer_Status(const char* buf);
	void ZC_KILLER_POINT(const char* buf);
	void ZC_KILLER_RANK(const char* buf);
	void Zc_Mail_Req_Get_List(const char* buf);
	void Zc_Mail_Req_Open(const char* buf);
	void Zc_Mail_Req_Get_Item(const char* buf);
	void Zc_Mail_Req_Send(const char* buf);
	void Zc_Mail_Receive(const char* buf);
	void Zc_Auction_Result(const char* buf);
	void Zc_Auction_Item_Req_Search(const char* buf);
	void Zc_StarPlace(const char* buf);
	void Zc_Ack_Mail_Add_Item(const char* buf);
	void Zc_Ack_Auction_Add_Item(const char* buf);
	void Zc_Ack_Mail_Delete(const char* buf);
	void Zc_MakingItemList(const char* buf);
	void Zc_Auction_My_Sell_Stop(const char* buf);
	void Zc_Auction_Windows(const char* buf);
	void Zc_Mail_Windows(const char* buf);
	void Zc_Ack_Mail_Return(const char* buf);
	void Zc_HuntingList(const char* buf);
	void Zc_Pcbang_Effect(const char* buf);
	void ZC_GANGSI_POINT(const char* buf);
	void ZC_GANGSI_RANK(const char* buf);
	void Zc_Aid(const char* buf);
	void Zc_Notify_Effect3(const char* buf);
	void ZC_DEATH_QUESTION(const char* buf);
	void Zc_Pc_Cash_Point_ItemList(const char* buf);
	void Zc_Pc_Cash_Point_Update(const char* buf);
	void Zc_Npc_Showefst_Update(const char* buf);
	void Zc_Msg(const char* buf);
	void Zc_Boss_Info(const char* buf);
	void Zc_Read_Book(const char* buf);
	void Zc_Equipment_Itemlist2(const char* buf);
	void Zc_Store_Equipment_Itemlist2(const char* buf);
	void Zc_Cart_Equipment_Itemlist2(const char* buf);
	void Zc_Cash_Time_Counter(const char* buf);
	void Zc_Cash_Item_Delete(const char* buf);
	void Zc_Item_Pickup_Ack2(const char* buf);
	void Zc_Mer_Init(const char* buf);
	void Zc_Mer_Par_Change(const char* buf);
	void Zc_All_Quest_List(const char* buf);
	void Zc_All_Quest_Mission(const char* buf);
	void Zc_Add_Quest(const char* buf);
	void Zc_Del_Quest(const char* buf);
	void Zc_Update_Mission_Hunt(const char* buf);
	void Zc_Active_Quest(const char* buf);
	void Zc_Item_Pickup_Party(const char* buf);
	void Zc_ShortCut_Key_List(const char* buf);
	void Zc_EquipItem_Damaged(const char* buf);
	void Zc_Npc_Chat(const char* buf);
	void Zc_Formatstring_Msg(const char* buf);
	void Zc_Party_Config(const char* buf);
	void Zc_MemorialDungeon_Subscription_Info(const char* buf);
	void Zc_MemorialDungeon_Subscription_Notify(const char* buf);
	void Zc_MemorialDungeon_Info(const char* buf);
	void Zc_MemorialDungeon_Notify(const char* buf);
	void Zc_Equipment_Itemlist3(const char* buf);
	void Zc_Store_Equipment_Itemlist3(const char* buf);
	void Zc_Cart_Equipment_Itemlist3(const char* buf);
	void Zc_NotifyBindOnEquip(const char* buf);
	void Zc_Item_Pickup_Ack3(const char* buf);
	void Zc_Isvr_Disconnect(const char* buf);
	void Zc_EquipwinMicroscope(const char* buf);
	void Zc_Config(const char* buf);
	void Zc_Config_Notify(const char* buf);
	void Zc_Battlefield_Chat(const char* buf);
	void Zc_Battlefield_Notify_Campinfo(const char* buf);
	void Zc_Battlefield_Notify_Point(const char* buf);
	void Zc_Battlefield_Notify_Position(const char* buf);
	void Zc_Battlefield_Notify_Hp(const char* buf);
	void Zc_Mapproperty(const char* buf);
	void Zc_Normal_Itemlist3(const char* buf);
	void Zc_Cart_Normal_Itemlist3(const char* buf);
	void Zc_Store_Normal_Itemlist3(const char* buf);
	void Zc_Accept_Enter2(const char* buf);
	void Zc_Notify_Moveentry4(const char* buf);
	void Zc_Notify_Newentry4(const char* buf);
	void Zc_Notify_Standentry4(const char* buf);
	void Zc_Notify_Font(const char* buf);
	void Zc_Progress(const char* buf);
	void Zc_Progress_Cancel(const char* buf);
	void Inner_Zc_Item_Fall_Entry2(const unsigned long in_ITAID, const unsigned short in_ITID, const bool in_IsIdentified, const short in_count, const short in_xPos, const short in_yPos, const unsigned char in_subX, const unsigned char in_subY);
	void Zc_Item_Fall_Entry2(const char* buf);
	void Zc_Notify_Moveentry5(const char* buf);
	void Zc_Notify_Npc_Standentry(const char* buf);
	void Zc_Reassembly_Certify(const char* buf);
	void Zc_Notify_Moveentry6(const char* buf);
	void Zc_Notify_Standentry6(const char* buf);
	void Inner_Zc_Item_Fall_Entry3(const unsigned long in_ITAID, const unsigned short in_ITID, const bool in_IsIdentified, const short in_count, const short in_xPos, const short in_yPos, const unsigned char in_subX, const unsigned char in_subY);
	void Zc_Item_Fall_Entry3(const char* buf);
	void Zc_Notify_Act3(const char* buf);
	void Inner_Zc_Broadcast3(mystd::string strMessage, int fontSize, COLORREF fontColor);
	void Zc_Broadcast3(const char* buf);
	void Zc_Skill_Postdelay(const char* buf);
	void Zc_Skill_Postdelay_List(const char* buf);
	void Zc_Msg_State_Change2(const char* buf);
	void Zc_MillenniumShield(const char* buf);
	void Zc_Skillinfo_Delete(const char* buf);
	void Zc_Skill_Select_Request(const char* buf);
	void Zc_Quest_Notify_Effect(const char* buf);
	void Zc_Req_Groupinfo_Change_V2(const char* buf);
	void Zc_Ho_Par_Change(const char* buf);
	void Zc_Seek_Party(const char* buf);
	void Zc_Skillinfo_Update2(const char* buf);
	void Zc_Msg_Value(const char* buf);
	void Zc_ItemListWin_Open(const char* buf);
	void Zc_Msg_Skill(const char* buf);
	void Zc_Notify_Exp(const char* buf);
	void Zc_Notify_Newentry5(const char* buf);
	void Zc_Notify_Standentry5(const char* buf);
	void Zc_Delete_Item_From_Body(const char* buf);
	void Zc_Change_Group_Master(const char* buf);
	void Zc_Broadcasting_Special_Item_Obtain(const char* buf);
	void Zc_Play_Npc_Bgm(const char* buf);
	void Zc_Define_Check(const char* buf);
	void Zc_Party_Booking_Ack_Register(const char* buf);
	void Zc_Party_Booking_Ack_Search(const char* buf);
	void Zc_Party_Booking_Ack_Delete(const char* buf);
	void Zc_Party_Booking_Notify_Insert(const char* buf);
	void Zc_Party_Booking_Notify_Update(const char* buf);
	void Zc_Party_Booking_Notify_Delete(const char* buf);
	void Zc_Notify_Hp_To_Groupm_R2(const char* buf);
	void Zc_Add_Exchange_Item2(const char* buf);
	void Zc_Open_Buying_Store(const char* buf);
	void Zc_Failed_Open_Buying_Store_To_Buyer(const char* buf);
	void Zc_Myitemlist_Buying_Store(const char* buf);
	void Zc_Buying_Store_Entry(const char* buf);
	void Zc_Disappear_Buying_Store_Entry(const char* buf);
	void Zc_Ack_Itemlist_Buying_Store(const char* buf);
	void Zc_Failed_Trade_Buying_Store_To_Buyer(const char* buf);
	void Zc_Update_Item_From_Buying_Store(const char* buf);
	void Zc_Item_Delete_Buying_Store(const char* buf);
	void Zc_El_Init(const char* buf);
	void Zc_El_Par_Change(const char* buf);
	void Zc_Broadcast4(const char* buf);
	void Zc_Failed_Trade_Buying_Store_To_Seller(const char* buf);

private:
	/* this+   0 */ //CMode baseclass_0;
	/* this+  64 */ BYTE dummy_40[116];
	/* this+ 180 */ CWorld* m_world;
	/* this+ 184 */ CView* m_view;
	/* this+ 188 */ CMousePointer* m_mousePointer;
	/* this+ 192 */ DWORD m_leftBtnClickTick;
	/* this+ 196 */ int m_oldMouseX;
	/* this+ 200 */ int m_oldMouseY;
	/* this+ 204 */ BYTE dummy_C0[20];
	/* this+ 224 */ int m_isAutoMoveClickOn;
	/* this+ 228 */ BYTE dummy_E4[112];
	/* this+ 340 */ BYTE m_actorNameList[16]; //mystd::map<unsigned long,NamePair> m_actorNameList;
	/* this+ 356 */ BYTE dummy_164[48];
	/* this+ 404 */ mystd::map<unsigned long,CellPos> m_actorPosList;
	/* this+ 420 */ BYTE dummy_1A4[172];
	/* this+ 592 */ int m_lastEfstId; // EFST of status icon currently hovered over
	/* this+ 596 */ BYTE field_254[48];
	/* this+ 644 */ int m_noMove;
	/* this+ 648 */ DWORD m_noMoveStartTick;
	/* this+ 652 */ int m_isOnQuest;
	/* this+ 656 */ int m_isPlayerDead;
	/* this+ 660 */ BYTE dummy_294[96];
	/* this+ 756 */ UINameBalloonText* m_nameBalloon;
	/* this+ 760 */ UITransBalloonText* m_broadcastBalloon;
	/* this+ 764 */ BYTE dummy_764[20];
	/* this+ 784 */ DWORD m_broadCastTick;
	/* this+ 788 */ BYTE dummy_788[200];
	/* this+ 988 */ SKILL_USE_INFO m_skillUseInfo;
	/* this+1004 */ BYTE dummy_3EC[56];
	/* this+1060 */ unsigned int m_nameBalloonType;
	/* this+1064 */ BYTE dummy_428[308];
	/* this+1372 */ UITransBalloonText* m_stateinfoBalloon;
	/* this+1376 */ BYTE dummy_560[16];

public:
	static hook_func<CGameMode* (CGameMode::*)(void)> CGameMode::_cCGameMode;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_dCGameMode;
	static hook_func<int (CGameMode::*)(void)> CGameMode::_OnRun;
	static hook_func<void (CGameMode::*)(const char* modeName)> CGameMode::_OnInit;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_OnExit;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_OnUpdate;
	static hook_func<void (CGameMode::*)(int a1)> CGameMode::_vfn5;
	static hook_func<int (CGameMode::*)(int messageId, int val1, int val2, int val3)> CGameMode::_SendMsg;
	static hook_func<void (CGameMode::*)(int state)> CGameMode::_OnChangeState;
	static hook_func<CWorld* (CGameMode::*)(void)> CGameMode::_GetWorld;
	static hook_func<CView* (CGameMode::*)(void)> CGameMode::_GetView;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_Initialize;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_SetCamera;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_RemoveGameActorAllAndMake;
	static hook_func<void (CGameMode::*)(vector2d& pos)> CGameMode::_MakeMousePointer;
	static hook_func<void (CGameMode::*)(CActorPickInfo* actorInfo, int processType)> CGameMode::_MakeMenu;
	static hook_func<void (CGameMode::*)(CActorPickInfo* actorInfo, int processType)> CGameMode::_ProcessMouseSnap;
	static hook_func<void (CGameMode::*)(int processType)> CGameMode::_ProcessWheel;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessRBtn;
	static hook_func<int (CGameMode::*)(int processType)> CGameMode::_ProcessGroundPick;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_UnloadRarelyUsedCaches;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessReqEmblem;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessNameWaitingTimer;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessPeriodicalJobs;
	static hook_func<void (CGameMode::*)(float cx, float cz, int& sx, int& sy, int& cellX, int& cellY)> CGameMode::_GetServerCoor;
	static hook_func<void (CGameMode::*)(float cx, float cz, int& sx, int& sy)> CGameMode::_GetServerCoor2;
	static hook_func<void (CGameMode::*)(int sx, int sy, int subX, int subY, float& cx, float& cz)> CGameMode::_GetClientCoor;
	static hook_func<void (CGameMode::*)(int sx, int sy, float& cx, float& cz)> CGameMode::_GetClientCoor2;
	static hook_func<bool (CGameMode::*)(int x, int y)> CGameMode::_IsRedCell;
	static hook_func<bool (CGameMode::*)(int sx, int sy, int cellX, int cellY, int dx, int dy)> CGameMode::_CanFindPath;
	static hook_func<bool (CGameMode::*)(int x, int y)> CGameMode::_IsRegisterCell;
	static hook_func<bool (CGameMode::*)(int& dx, int& dy)> CGameMode::_GetClosestValidCell;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_InvalidatePlayerGage;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_HideCheck;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_PollNetworkStatus;
	static hook_func<void (CGameMode::*)(int time)> CGameMode::_HideMousePointer;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessInput;
	static hook_func<bool (CGameMode::*)(int& dx, int& dy)> CGameMode::_GetGroundAttrPos;
	static hook_func<void (CGameMode::*)(int val1, int val2)> CGameMode::_ProcessTalkType;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessLockOnMouse;
	static hook_func<int (CGameMode::*)(int processType, CActorPickInfo* actorInfo)> CGameMode::_ProcessActorPick;
	static hook_func<void (CGameMode::*)(unsigned long aid)> CGameMode::_MakeNameBalloon;
	static hook_func<void (CGameMode::*)(CGameActor* theActor)> CGameMode::_MakeActorNameBalloon;
	static hook_func<void (CGameMode::*)(void)> CGameMode::_ProcessNameBalloon;
	static hook_func<void (CGameMode::*)(int xPos, int yPos)> CGameMode::_ProcessStateInfoBalloon;
	static hook_func<mystd::string (CGameMode::*)(int in_EFST, int* out_EFST)> CGameMode::_GetStateRemainingTimeStr;
	static hook_func<CGameActor* (CGameMode::*)(int job)> CGameMode::_NewNpc;
	static hook_func<void (CGameMode::*)(int GID, int effectState, int clevel, int showEFST)> CGameMode::_GameModeShowEFST;
	static hook_func<void (CGameMode::*)(CGameActor* theActor, int gdid, int emblemVer)> CGameMode::_MakeEmblemWnd;
	static hook_func<mystd::string (CGameMode::*)(int aid)> CGameMode::_GetActorName2010;

//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Accept_Enter;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Newentry;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Actentry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry_Npc;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Time;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Vanish;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Sc_Notify_Ban;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Accept_Quit;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Refuse_Quit;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Move;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Playermove;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Stopmove;
	static hook_func<void (CGameMode::*)(unsigned long GID, unsigned long targetGID, unsigned long startTime, int attackMT, int attackedMT, int damage, short count, unsigned char action, int leftDamage)> CGameMode::_Zc_Notify_Act;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Act_Position;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Chat;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Playerchat;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Npcack_Mapmove;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Npcack_Servermove;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Npcack_Enable;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Reqname;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Whisper;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Whisper;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Broadcast;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Change_Direction;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Entry;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Fall_Entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Pickup_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Disappear;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Normal_Itemlist;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Equipment_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Normal_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Equipment_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Use_Item_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Wear_Equip_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Takeoff_Equip_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Throw_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Par_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Longpar_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Restart_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Say_Dialog;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Wait_Dialog;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Close_Dialog;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Menu_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Status_Change_Ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Status;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Status_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Emotion;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_User_Count;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Sprite_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Select_Dealtype;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Purchase_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Sell_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Purchase_Result;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Sell_Result;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Disconnect_Character;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Setting_Whisper_Pc;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Setting_Whisper_State;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Whisper_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Create_Chatroom;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Room_Newentry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Destroy_Room;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Refuse_Enter_Room;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Enter_Room;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Member_Newentry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Member_Exit;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Change_Chatroom;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Role_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Add_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Conclude_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cancel_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Exec_Exchange_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Exchangeitem_Undo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Storeitem_Countinfo;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Item_To_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Delete_Item_From_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Close_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Make_Group;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Group_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Req_Join_Group;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Join_Group;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_groupinfo_change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Member_To_Group;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Delete_Member_From_Group;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Hp_To_Groupm;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Position_To_Groupm;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Chat_Party;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mvp_Getting_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mvp_Getting_Special_Exp;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mvp;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Throw_Mvpitem;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skillinfo_Update;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skillinfo_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Touseskill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Skill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Skill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Skill_Position;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Groundskill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_State_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Use_Skill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Warplist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Remember_Warppoint;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Disappear;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Cartitem_Countinfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Equipment_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Normal_Itemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Item_To_Cart;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Delete_Item_From_Cart;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cartoff;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Additem_To_Cart;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_openstore;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_store_entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_disappear_entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_pc_purchase_itemlist_frommc;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_pc_purchase_result_frommc;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_pc_purchase_myitemlist;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_deleteitem_from_mcstore;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_attack_failure_for_distance;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_attack_range;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_action_failure;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_equip_arrow;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_recovery;
	static hook_func<void (CGameMode::*)(const char* buf, BOOL isV2)> CGameMode::_Zc_useskill_ack;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_couplestatus;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_open_editdlg;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_compass;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_show_image;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_autorun_skill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_resurrection;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_give_manner_point;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_notify_manner_point_given;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_myguild_basic_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_guild_menuinterface;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_guild_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_guild_emblem_img;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_membermgr_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_change_members;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_open_member_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_leave_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_ban_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_disorganize_guild_result;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_disorganize_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_position_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_GuildSkillInfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ban_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_other_guild_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_position_id_name_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_result_make_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_join_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_req_join_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_update_gdid;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_update_charstat;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_guild_notice;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_req_ally_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_ally_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_change_guild_positioninfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_itemidentify_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_itemidentify;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_itemcomposition_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_itemcomposition;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_guild_chat;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_hostile_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_member_add;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_delete_related_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_add_related_guild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_itemrefining;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_notify_mapinfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_disconnect;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_monster_info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_makable_item_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_req_itemmaking;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_talkbox_chat_contents;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_update_mapinfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Reqname_bygid;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Reqnameall;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Msg_State_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Mapproperty;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Ranking;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Effect;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Start_Capture;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_TryCapture_Monster;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Property_Pet;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Feed_Pet;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Change_Pet_Status;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_PetEgg_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pet_Act;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Par_Change_User;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Update;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MakingArrowList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_NpcSpriteChange;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ShowDigit;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_show_image2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ChangeGuild;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_GuildInfo2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_GuildZenyAck;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Dispel;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Reply_RemainTime;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Info_RemainTime;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Broadcast2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_AddItemToStore2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Item_To_Cart2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Sc_Ack_Encryption;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Use_Item_Ack2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Entry2;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Monster_Talk;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_AutoSpellList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_DevotionList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Spirits;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_BladeStop;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ComboDelay;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Sound;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Open_EditDlgStr;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Mapproperty2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Sprite_Change2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Newentry2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Skill2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_AccountName;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Spirits2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Couple;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Start_Couple;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_CoupleName;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Member_To_Group2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Congratulation;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Position_To_Guildm;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Guild_Member_Map_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Normal_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Normal_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Normal_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_update_charstat2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Effect2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Exchange_Item2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Exchange_Item2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Baby;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Start_Baby;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_repair_item_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_itemrepair;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_HighJump;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Friends_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Divorce;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Friends_State;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Join_Friend;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Friends_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Delete_Friend;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_StarSkill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_PvpPoint;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Status_GM;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_SKILLMSG;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_BABYMSG;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_BLACKSMITH_RANK;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_ALCHEMIST_RANK;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_BLACKSMITH_POINT;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_ALCHEMIST_POINT;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_PKinfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_CrazyKiller;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_notify_weapon_item_list;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ack_weaponrefine;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_TAEKWON_POINT;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_TAEKWON_RANK;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Game_Guard;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_State_Change3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Newentry3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Property_Homun;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Change_Mer_Status;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_KILLER_POINT;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_KILLER_RANK;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Req_Get_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Req_Open;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Req_Get_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Req_Send;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Receive;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Auction_Result;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Auction_Item_Req_Search;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_StarPlace;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Mail_Add_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Auction_Add_Item;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Mail_Delete;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MakingItemList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Auction_My_Sell_Stop;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Auction_Windows;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mail_Windows;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Mail_Return;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_HuntingList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pcbang_Effect;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_GANGSI_POINT;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_GANGSI_RANK;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Aid;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Effect3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_ZC_DEATH_QUESTION;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Cash_Point_ItemList;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Pc_Cash_Point_Update;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Npc_Showefst_Update;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Msg;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Boss_Info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Read_Book;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Equipment_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Equipment_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Equipment_Itemlist2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cash_Time_Counter;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cash_Item_Delete;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Pickup_Ack2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mer_Init;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mer_Par_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_All_Quest_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_All_Quest_Mission;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Quest;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Del_Quest;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Update_Mission_Hunt;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Active_Quest;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Pickup_Party;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ShortCut_Key_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_EquipItem_Damaged;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Npc_Chat;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Formatstring_Msg;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Config;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MemorialDungeon_Subscription_Info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MemorialDungeon_Subscription_Notify;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MemorialDungeon_Info;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MemorialDungeon_Notify;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Equipment_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Equipment_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Equipment_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_NotifyBindOnEquip;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Pickup_Ack3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Isvr_Disconnect;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_EquipwinMicroscope;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Config;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Config_Notify;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Battlefield_Chat;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Battlefield_Notify_Campinfo;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Battlefield_Notify_Point;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Battlefield_Notify_Position;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Battlefield_Notify_Hp;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Mapproperty;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Normal_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Cart_Normal_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Store_Normal_Itemlist3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Accept_Enter2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry4;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Newentry4;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry4;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Font;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Progress;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Progress_Cancel;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Fall_Entry2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry5;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Npc_Standentry;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Reassembly_Certify;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Moveentry6;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry6;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Fall_Entry3;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Act3;
	static hook_func<void (CGameMode::*)(mystd::string strMessage, int fontSize, COLORREF fontColor)> CGameMode::_Inner_Zc_Broadcast3;
//	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Broadcast3;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Postdelay;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Postdelay_List;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Msg_State_Change2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_MillenniumShield;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skillinfo_Delete;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skill_Select_Request;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Quest_Notify_Effect;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Req_Groupinfo_Change_V2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ho_Par_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Seek_Party;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Skillinfo_Update2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Msg_Value;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_ItemListWin_Open;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Msg_Skill;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Exp;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Newentry5;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Standentry5;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Delete_Item_From_Body;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Change_Group_Master;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Broadcasting_Special_Item_Obtain;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Play_Npc_Bgm;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Define_Check;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Ack_Register;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Ack_Search;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Ack_Delete;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Notify_Insert;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Notify_Update;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Party_Booking_Notify_Delete;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Notify_Hp_To_Groupm_R2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Add_Exchange_Item2;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Open_Buying_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Failed_Open_Buying_Store_To_Buyer;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Myitemlist_Buying_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Buying_Store_Entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Disappear_Buying_Store_Entry;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Ack_Itemlist_Buying_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Failed_Trade_Buying_Store_To_Buyer;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Update_Item_From_Buying_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Item_Delete_Buying_Store;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_El_Init;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_El_Par_Change;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Broadcast4;
	static hook_func<void (CGameMode::*)(const char* buf)> CGameMode::_Zc_Failed_Trade_Buying_Store_To_Seller;
};
C_ASSERT( sizeof CGameMode == 1392 );
